package maps

// Keys 提取 map 中的所有键并返回一个数组
func Keys[T comparable](m map[T]any) []T {
	if len(m) == 0 {
		return []T{}
	}

	keys := make([]T, 0, len(m))
	for k := range m {
		keys = append(keys, k)
	}
	return keys
}
